package com.xbongbong.pro.domain.dao;

import com.xbongbong.pro.domain.entity.SearchCustomerCompanyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @Author shian
 * @create 2019-08-07 15:48
 * @Description
 */
@Repository
@Mapper
public interface SearchCustomerCompanyDao {

    /**
     *  根据条件查找搜客套餐
     * @param param
     * @return java.util.List<com.xbongbong.pro.domain.entity.SearchCustomerCompanyEntity>
     * @author 石安
     * @date 2019-08-09
     */
    List<SearchCustomerCompanyEntity> findEntitys(@Param("param") Map<String, Object> param);

    /**
     * 新增搜客套餐
     * @param entity
     * @return java.lang.Integer
     * @author 石安
     * @date 2019-08-09
     */
    Integer insert(SearchCustomerCompanyEntity entity);

    /**
     * 修改搜客套餐（使用于更改主账户）
     * @param entity
     * @return java.lang.Integer
     * @author 石安
     * @date 2019-11-15
     */
    Integer update(SearchCustomerCompanyEntity entity);

    List<SearchCustomerCompanyEntity> getListByCorpid(@Param("corpid") String corpid);

    /**
     * 查找某一公司的搜客信息
     * @param corpid
     * @param type
     * @return com.xbongbong.pro.domain.entity.SearchCustomerCompanyEntity
     * @author 石安
     * @date 2019-08-27
     */
    SearchCustomerCompanyEntity getByCorpid(@Param("corpid") String corpid, @Param("type") int type);

    /**
     * 获取所有的公司corpid
     * @param
     * @return java.util.List<java.lang.String>
     * @author 石安
     * @date 2019-11-15
     */
    List<String> getCorpidList();

    /**
     * 根据套餐类型查公司
     * @param type
     * @return java.util.List<java.lang.String>
     * @author 石安
     * @date 2019-11-18
     */
    List<String> getCorpidListWithType(@Param("type") int type);

    void updateBatch(@Param("list") List<SearchCustomerCompanyEntity> companyList);
}
